package com.service.admin.product.controller.req;

import com.service.dao.enums.LanguageEnum;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

import javax.validation.constraints.*;
import java.math.BigDecimal;

/**
 * <dl>
 * <dt>back-end</dt>
 * <dd>Description:</dd>
 * <dd>Copyright: Copyright (C) 2015</dd>
 * <dd>Company: </dd>
 * <dd>CreateDate: 2019年10月09日</dd>
 * </dl>
 *
 * @author
 */
@Getter
@Setter
@ToString
public class ProductAddReq {


    private Integer id;
    /**
     * 商品名
     */
    @NotBlank(message = "商品名称不能为空")
    private String productName;
    /**
     * 商品描述
     */
    @NotBlank(message = "商品描述不能为空")
    private String productDesc;
    /**
     * 现价
     */
    @NotNull(message = "商品价格不能为空")
    @Min(value = 0, message = "商品价格不能低于0")
    private BigDecimal productPrice;

    /**
     * 库存
     */
    @NotNull(message = "库存不能为空")
    @Min(value = -1, message = "库存不能低于-1")
    private Integer stock = 0;

    /**
     * 限购数量
     */
    private Integer limitBuyNum = 0;

    /**
     * 商品封面图
     */
    @NotBlank(message = "商品封面图不能为空")
    private String pic;
    /**
     * 轮播图1
     */
    @NotBlank(message = "轮播图不能为空")
    private String pic1;
    /**
     * 轮播图2
     */
    private String pic2;
    /**
     * 轮播图3
     */
    private String pic3;
    /**
     * 轮播图4
     */
    private String pic4;
    /**
     * 轮播图5
     */
    private String pic5;
    /**
     * 运费
     */
    @NotNull(message = "商品运费不能为空")
    @Min(value = 0, message = "商品运费不能低于0")
    private BigDecimal freight = BigDecimal.ZERO;
    /**
     * 赠送积分
     */
    @NotNull(message = "赠送积分不能为空")
    @Min(value = 0, message = "赠送积分不能低于0")
    private Integer giftPoints = 0;
    /**
     *
     */
    @NotNull(message = "商品语言类型不能为空")
    private LanguageEnum productLanguage;

    @Min(value = 3, message = "产品类型最小为3")
    @Max(value = 4, message = "产品类型最小为4")
    private Integer productType;
}
